/* 
 * File:   Main.h
 * Author: luismiguelneiva
 *
 * Created on 6 de Janeiro de 2012, 15:52
 */

/*Estrutura TipoUtilizador para usar como
um campo na estrutura Utilizador*/
typedef enum {
    aluno, Docente, DocenteRegente
} TipoUtilizador;

/*Estrutura Utilizador para inserir no progrma
alunos, docentes ou docentes-regentes*/
typedef struct {
    char nome [50];
    char username[50];
    char pass [10];
    int numero;
    TipoUtilizador tipoUtilizador;
} Utilizador;

struct noListaUtilizador {
    Utilizador user;
    struct noListaUtilizador* p_Next;

};
typedef struct noListaUtilizador struct_noListaUtilizador;

/*Assinatura (protótipo) da função createUser1*/
Utilizador getUtilizadorFromTeclado();


/*Assinatura (protótipo) da função
displayUser (mostra utilizador criado no ecrâ) */
void displayUser(Utilizador);

/*Assinatura (protótipo da função
//appendNovoUtilizador (Adiciona novo utilizador à lista)*/
void appendNovoUtilizador(struct_noListaUtilizador*, Utilizador);

int menuAlunos();
void menuAlunosSelect(struct_noListaUtilizador* p_Primeiro, int menuItem);

int menuDocente_DocentesRegente();
void menuDocente_DocentesRegenteSelect(struct_noListaUtilizador* p_Primeiro, int menuItem);

int menuDocenteRegente();